1. Field of the Invention
The present invention generally relates to mobile communication systems, and more particularly to a method of selecting a server in a mobile communication system.
2. Background of the Related Art
In a conventional multistage communication system that provides QoS (quality of service) levels to a plurality of subscribers, a server is selected without considering a resource condition of the server. This selection may be made in one of several ways.
FIG. 1 shows a system which performs server selection based on a round-robin method. In this system, selecting a server Sj is performed or follows when a new service request Ri is provided to a service distributor. If the i-th service request is provided to the service distributor, the distributor first checks which server is selected as (j−1)-th server in order to provide a corresponding service for the (i−1)-th service. If the number of candidate servers is j−1, the first server is selected for the i-th service request. If the number is not j−1, the j-th server is selected for the i-th service request.
FIG. 2 shows a system which performs server selection based on an identifier which is simultaneously provided to a multistage communications system, when a new service is requested and without considering a resource condition of the candidate servers. In the second system, selecting a server Sj is based on an identifier simultaneously provided to a service distributor with the service request Ri. The identifier provided with the service request is called the service request identifier. If the i-th service request is provided to the service distributor, the identifier of the server to be allocated for the service request is determined using a function having the service request identifier as one of its parameters. Then, the j-th server of the determined identifier is selected for the i-th service request.
FIG. 3 shows a server-selection system where a load distribution is performed by focusing only on a specified resource and where selecting the server provides a corresponding service in consideration of the resource condition of the server. In this system, when a new service request Ri is provided to a service distributor, the procedure of selecting a server Sj to provide a corresponding service for the (i−1)-th service is as follows. The service distributor performs the selection so that candidate servers distribute the load for an arbitrary server resource. First, a resource management server periodically receives a report message of the resource conditions of all servers from the servers, and informs a service distributor of the identifier of the server having the smallest load. If the i-th service request is provided to the service distributor, the service distributor checks which server identifier is most recent among the server identifiers received by the service distributor from the resource management server. If the server identifier that the service distributor most recently received from the resource management server is j, the service distributor allocates the j-th server for the i-th service request. Although the service distributor is depicted with the same reference numeral in each of FIGS. 1-3, the service distributors in each system is unique to its respective system and may not constitute the same elements or functions.
The conventional method of selecting a server to provide service without considering resource conditions of servers has the following disadvantages.
First, from the viewpoint of the system, since the necessary amount of resources varies according to the QoS (quality of service) level of each service, the load may be concentrated on a specified server. Thus, the performance of the server may deteriorate thereby resulting in lowering the system efficiency.
Second, from the viewpoint of a subscriber, if a server which cannot provide a corresponding service is selected for a service request due to the concentration of the load, it is impossible to provide a stable service to the subscriber.
The conventional method of selecting a server to provide a corresponding service by distributing the load in consideration of a specified server has the following disadvantages.
First, from the viewpoint of the system, since the load is distributed in consideration of only one resource, only the one resource is expended even through other resources of a specified server may be available, particularly if diverse QoS levels are provided. Therefore, the possibility that service cannot be provided is greater. This results in degradation of system efficiency.
Second, from the viewpoint of a subscriber, a server may not be able to provide service in response to a service request due to concentration of the load. In this case, a stable service may not be provided to the subscriber.